home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 October: Technology Seed / ADC Seed CD - October 1999.toast / FireWire / FireWire_2.1_SDK_DR3 / Source / FWIM / MakeFile < prev   
Encoding:
Makefile  |  1999-05-17  |  12.2 KB  |  408 lines  |  [TEXT/MPS ]

  1. #
  2. #    File:        MakeFile
  3. #
  4. #    Contains:    Build rules for FWIM sample code.
  5. #
  6. #    Version:    1.0
  7. #
  8. #    Written by:    Erik Staats
  9. #
  10. #    Copyright:    © 1996-1998 by Apple Computer, Inc., all rights reserved.
  11. #
  12. #    File Ownership:
  13. #
  14. #        DRI:                Eric Anderson
  15. #
  16. #        Other Contact:        Jay Lloyd
  17. #
  18. #        Technology:            FireWire
  19. #
  20. #    Writers:
  21. #
  22. #        (DCB)    Clinton Bauder
  23. #        (jkl)    Jay Lloyd
  24. #
  25. #    Change History (most recent first):
  26. #
  27. #      <FW33>    12/19/98    DCB        More cleanup for SDK.
  28. #      <FW32>      8/7/98    jkl        Added an example of how MergeFragment may be used to combine
  29. #                                    multiple fwims (or any code fragments) into a single file.
  30. #      <FW31>      8/6/98    jkl        Updated for SDK build of OpenHCI fwim.
  31. #      <FW30>     7/29/98    jkl        Updated for Interfaces&Libraries 3.1. Bumped version for this.
  32. #      <FW29>     8/29/97    KDM        Bumped version to 1.0.1a6. Piece of Blaze 1.1a6
  33. #      <FW28>     6/19/97    GG        Bumped version to 1.0.1a5.
  34. #      <FW27>      6/5/97    EA        Added instructions to build PeleFWIM sample code.
  35. #      <FW26>     5/29/97    GG        Bumped version to 1.01a4.
  36. #      <FW25>     5/16/97    GG        Bumped FireWire version to 1.01a3.
  37. #      <FW24>     4/29/97    GG        Bumped version to 1.0.1a2.
  38. #      <FW23>     4/10/97    GG        Bumped version to 1.0.1d1.
  39. #      <FW22>     3/27/97    GG        Bumped version to 1.0 GM.
  40. #      <FW21>     3/19/97    GG        Bumped version to 1.0b3.
  41. #      <FW20>     3/12/97    GG        Bumped version to 1.0b2.
  42. #      <FW19>     2/19/97    GG        Bumped version to 1.0a3.
  43. #      <FW18>     2/11/97    GG        Bumped copyright to 1997.
  44. #      <FW17>     2/11/97    GG        Bumped version to 1.0a2.
  45. #      <FW16>      2/4/97    GG        
  46. #      <FW15>      2/4/97    GG        Bumped version to 1.0d24.
  47. #      <FW14>     1/28/97    GG        Bumped version to 1.0d23.
  48. #      <FW13>     1/21/97    GG        Bumped version to 1.0d22.
  49. #      <FW12>      1/2/97    GG        Bumped Version to 1.0d21.
  50. #      <FW11>     12/6/96    GG        Bumped version to 1.0d19.
  51. #      <FW10>    11/27/96    ES        Removed links to DevNLib.
  52. #       <FW9>    11/26/96    ES        Removed -main FWIMInterface option from links.
  53. #       <FW8>    11/14/96    GG        Bumped version to 1.0d18.
  54. #       <FW7>    10/31/96    ES        Bumped version to 1.0d17.
  55. #       <FW6>    10/16/96    ES        Bumped version to 1.0d16.
  56. #       <FW5>     10/2/96    ES        Bumped version to 1.0d15.
  57. #       <FW4>     9/12/96    ES        Bumped version to 1.0d14.
  58. #       <FW3>     8/26/96    ES        Changed to use MrC and SC. This MakeFile will now only work with
  59. #                                    ETO #20 and forward.
  60. #       <FW2>      8/7/96    ES        Filled in contains and written by fields.
  61. #       <FW1>      8/7/96    ES        first checked in
  62. #
  63. #
  64.  
  65. ################################################################################
  66. #
  67. # Define some directories
  68. #
  69.  
  70. FWIMRootDir                    =    :
  71.  
  72. FWSampleDir                    =    {FWIMRootDir}::
  73.  
  74. FWInterfacesDir                =    {FWSampleDir}Interfaces:
  75. FWIMInterfacesDir            =    {FWIMRootDir}Interfaces:
  76.  
  77. FWLibrariesDir                =    {FWSampleDir}Libraries:
  78. FWIMLibrariesDir            =    {FWIMRootDir}Libraries:
  79.  
  80. LynxFWIMSourceDir            =    {FWIMRootDir}LynxFWIM:
  81. PeleFWIMSourceDir            =    {FWIMRootDir}PeleFWIM:
  82. OHCIFWIMSourceDir            =    {FWIMRootDir}OHCIFWIM:
  83.  
  84. BuildResultsDir                =    {FWSampleDir}BuildResults:
  85. ObjectsDir                    =    {BuildResultsDir}Objects:
  86. ExtensionsDir                =    {BuildResultsDir}Extensions:
  87.  
  88. ################################################################################
  89. #
  90. # Define LynxFWIM version info
  91. #
  92.  
  93. FWVersion                    =    1
  94. FWRevision                    =    1
  95. FWBuildStage                =    development
  96. FWBuildNumber                =    1
  97. FWShortVersionString        =    '"1.1d1"'
  98. FWLongVersionString            =    '"1.1d1, © 1995-98 Apple Computer, Inc."'
  99.  
  100.  
  101. ################################################################################
  102. #
  103. # Define OHCIFWIM version info
  104. #
  105.  
  106. OHCIVersion                    =    1
  107. OHCIRevision                =    0
  108. OHCIBuildStage                =    development
  109. OHCIBuildNumber                =    1
  110. OHCIShortVersionString        =    '"1.0d1"'
  111. OHCILongVersionString        =    '"1.0d1, © 1998 Apple Computer, Inc."'
  112.  
  113.  
  114. ################################################################################
  115. #
  116. # Define stuff for PowerPC compilation
  117. #
  118.  
  119. MrCOptions                    =    -opt speed                                    ∂
  120.                                 -w 2,7,35                                    ∂
  121.                                 -d TRUE=1                                    ∂
  122.                                 -d FALSE=0                                    ∂
  123.                                 -i "{FWInterfacesDir}"                        ∂
  124.                                 -i "{FWIMInterfacesDir}"                    ∂
  125.                                 -i "{CIncludes}"
  126.  
  127. CPPCOptions                    =    {MrCOptions}
  128.  
  129. AsmPPC                        =    PPCAsm
  130.  
  131. AsmPPCOptions                =    -dialect PowerPC                            ∂
  132.                                 -o {Targ}
  133.  
  134. CPPC                        =    MrC
  135.  
  136. LinkPPC                        =    PPCLink
  137.  
  138.  
  139. ################################################################################
  140. #
  141. # Define stuff for LynxFWIM rez
  142. #
  143.  
  144. RezOptions                    =    -d FWVersion={FWVersion}                    ∂
  145.                                 -d FWRevision={FWRevision}                    ∂
  146.                                 -d FWBuildStage={FWBuildStage}                ∂
  147.                                 -d FWBuildNumber={FWBuildNumber}            ∂
  148.                                 -d FWShortVersionString={FWShortVersionString}    ∂
  149.                                 -d FWLongVersionString={FWLongVersionString} ∂
  150.                                 -d ETO_BUILD=1
  151.  
  152.  
  153. ################################################################################
  154. #
  155. # Define stuff for OHCIFWIM rez
  156. #
  157.  
  158. OHCIRezOptions                =    -d FWVersion={OHCIVersion}                    ∂
  159.                                 -d FWRevision={OHCIRevision}                ∂
  160.                                 -d FWBuildStage={OHCIBuildStage}            ∂
  161.                                 -d FWBuildNumber={OHCIBuildNumber}            ∂
  162.                                 -d FWShortVersionString={OHCIShortVersionString}    ∂
  163.                                 -d FWLongVersionString={OHCILongVersionString}
  164.  
  165.  
  166. ################################################################################
  167. #
  168. # Lynx Lite FWIM
  169. #
  170.  
  171. "{ObjectsDir}LynxLiteFWIM.c.o"    ƒ                                            ∂
  172.                             "{LynxFWIMSourceDir}LynxFWIM.c"                    ∂
  173.                             "{LynxFWIMSourceDir}LynxFWIM.h"                    ∂
  174.                             "{FWInterfacesDir}FireWire.h"
  175.     {CPPC}                                                                    ∂
  176.         "{LynxFWIMSourceDir}LynxFWIM.c"                                     ∂
  177.         -d LynxLiteFWIM=1                                                    ∂
  178.         -i "{FWInterfacesDir}"                                                ∂
  179.         -i "{LynxFWIMSourceDir}"                                            ∂
  180.         {CPPCOptions}                                                        ∂
  181.         -o {Targ}
  182.  
  183. "{ExtensionsDir}LynxLiteFWIM"    ƒƒ                                            ∂
  184.                             "{ObjectsDir}LynxLiteFWIM.c.o"                    ∂
  185.                             "{LynxFWIMSourceDir}LynxFWIM.exp"
  186.     {LinkPPC}                                                                ∂
  187.         -t 'ndrv'                                                            ∂
  188.         -c 'fw  '                                                            ∂
  189.         -xm sharedlibrary                                                    ∂
  190.         -w                                                                     ∂
  191.         -@export "{LynxFWIMSourceDir}LynxFWIM.exp"                            ∂
  192.         "{ObjectsDir}LynxLiteFWIM.c.o"                                        ∂
  193.         "{SharedLibraries}InterfaceLib"                                        ∂
  194.         "{SharedLibraries}StdCLib"                                            ∂
  195.         "{SharedLibraries}NameRegistryLib"                                    ∂
  196.         "{SharedLibraries}DriverServicesLib"                                ∂
  197.         "{SharedLibraries}PCILib"                                            ∂
  198.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  199.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  200.          -o {Targ}
  201.  
  202. "{ExtensionsDir}LynxLiteFWIM"    ƒƒ                                            ∂
  203.                             "{ObjectsDir}LynxLiteFWIM.c.o"                    ∂
  204.                             "{LynxFWIMSourceDir}LynxFWIM.exp"                ∂
  205.                             "{LynxFWIMSourceDir}LynxFWIM.r"                    ∂
  206.                             "{FWIMRootDir}MakeFile"
  207.     Rez                                                                        ∂
  208.         {RezOptions}                                                        ∂
  209.         "{LynxFWIMSourceDir}LynxFWIM.r"                                        ∂
  210.         -d LynxLiteFWIM=1                                                    ∂
  211.         -a                                                                    ∂
  212.         -o {Targ}
  213.  
  214.  
  215. LynxLiteFWIM    ƒ                                                            ∂
  216.                         "{ExtensionsDir}LynxLiteFWIM"
  217.  
  218.  
  219. ################################################################################
  220. #
  221. # Pele FWIM
  222. #
  223.  
  224. "{ObjectsDir}PeleFWIM.c.o"    ƒ                                                ∂
  225.                             "{PeleFWIMSourceDir}PeleFWIM.c"                    ∂
  226.                             "{PeleFWIMSourceDir}PeleFWIM.h"                    ∂
  227.                             "{FWInterfacesDir}FireWire.h"
  228.     {CPPC}                                                                    ∂
  229.         "{PeleFWIMSourceDir}PeleFWIM.c"                                     ∂
  230.         -i "{FWInterfacesDir}"                                                ∂
  231.         -i "{PeleFWIMSourceDir}"                                            ∂
  232.         {CPPCOptions}                                                        ∂
  233.         -o {Targ}
  234.  
  235. "{ExtensionsDir}PeleFWIM"    ƒƒ                                                ∂
  236.                             "{ObjectsDir}PeleFWIM.c.o"                        ∂
  237.                             "{PeleFWIMSourceDir}PeleFWIM.exp"
  238.     {LinkPPC}                                                                ∂
  239.         -t 'ndrv'                                                            ∂
  240.         -c 'fw  '                                                            ∂
  241.         -xm sharedlibrary                                                    ∂
  242.         -w                                                                     ∂
  243.         -@export "{PeleFWIMSourceDir}PeleFWIM.exp"                            ∂
  244.         "{ObjectsDir}PeleFWIM.c.o"                                            ∂
  245.         "{SharedLibraries}InterfaceLib"                                        ∂
  246.         "{SharedLibraries}StdCLib"                                            ∂
  247.         "{SharedLibraries}NameRegistryLib"                                    ∂
  248.         "{SharedLibraries}DriverServicesLib"                                ∂
  249.         "{SharedLibraries}PCILib"                                            ∂
  250.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  251.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  252.          -o {Targ}
  253.  
  254. "{ExtensionsDir}PeleFWIM"    ƒƒ                                                ∂
  255.                             "{ObjectsDir}PeleFWIM.c.o"                        ∂
  256.                             "{PeleFWIMSourceDir}PeleFWIM.exp"                ∂
  257.                             "{PeleFWIMSourceDir}PeleFWIM.r"                    ∂
  258.                             "{FWIMRootDir}MakeFile"
  259.     Rez                                                                        ∂
  260.         {RezOptions}                                                        ∂
  261.         "{PeleFWIMSourceDir}PeleFWIM.r"                                        ∂
  262.         -a                                                                    ∂
  263.         -o {Targ}
  264.  
  265.  
  266. PeleFWIM    ƒ                                                                ∂
  267.                         "{ExtensionsDir}PeleFWIM"
  268.  
  269. ################################################################################
  270. #
  271. # OpenHCI FWIM
  272. #
  273.  
  274. "{ObjectsDir}OHCIFWIM.c.o"    ƒ                                                ∂
  275.                             "{OHCIFWIMSourceDir}OHCIFWIM.c"                    ∂
  276.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  277.                             "{FWInterfacesDir}FireWire.h"
  278.     {CPPC}                                                                    ∂
  279.         "{OHCIFWIMSourceDir}OHCIFWIM.c"                                     ∂
  280.         -i "{FWInterfacesDir}"                                                ∂
  281.         -i "{OHCIFWIMSourceDir}"                                            ∂
  282.         -d Vendor_Name=1                                                    ∂
  283.         {CPPCOptions}                                                        ∂
  284.         -o {Targ}
  285.  
  286. "{ObjectsDir}OHCIFWIMIsoch.c.o"    ƒ                                            ∂
  287.                             "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"            ∂
  288.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  289.                             "{FWInterfacesDir}FireWire.h"
  290.     {CPPC}                                                                    ∂
  291.         "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"                                 ∂
  292.         -i "{FWInterfacesDir}"                                                ∂
  293.         -i "{OHCIFWIMSourceDir}"                                            ∂
  294.         {CPPCOptions}                                                        ∂
  295.         -o {Targ}
  296.  
  297. "{ExtensionsDir}OHCIFWIM"    ƒƒ                                                ∂
  298.                             "{ObjectsDir}OHCIFWIM.c.o"                        ∂
  299.                             "{ObjectsDir}OHCIFWIMIsoch.c.o"                    ∂
  300.                             "{OHCIFWIMSourceDir}OHCIFWIM.exp"
  301.     {LinkPPC}                                                                ∂
  302.         -t 'ndrv'                                                            ∂
  303.         -c 'fw  '                                                            ∂
  304.         -xm sharedlibrary                                                    ∂
  305.         -w                                                                     ∂
  306.         -@export "{OHCIFWIMSourceDir}OHCIFWIM.exp"                            ∂
  307.         "{ObjectsDir}OHCIFWIM.c.o"                                            ∂
  308.         "{ObjectsDir}OHCIFWIMIsoch.c.o"                                        ∂
  309.         "{SharedLibraries}InterfaceLib"                                        ∂
  310.         "{SharedLibraries}StdCLib"                                            ∂
  311.         "{SharedLibraries}NameRegistryLib"                                    ∂
  312.         "{SharedLibraries}DriverServicesLib"                                ∂
  313.         "{SharedLibraries}PCILib"                                            ∂
  314.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  315.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  316.          -o {Targ}
  317.  
  318. "{ExtensionsDir}OHCIFWIM"    ƒƒ                                                ∂
  319.                             "{OHCIFWIMSourceDir}OHCIFWIM.r"                    ∂
  320.                             "{FWIMRootDir}MakeFile"
  321.     Rez                                                                        ∂
  322.         {OHCIRezOptions}                                                    ∂
  323.         "{OHCIFWIMSourceDir}OHCIFWIM.r"                                        ∂
  324.         -d Vendor_Name=1                                                    ∂
  325.         -a                                                                    ∂
  326.         -o {Targ}
  327.  
  328.  
  329. OHCIFWIM    ƒ                                                                ∂
  330.                         "{ExtensionsDir}OHCIFWIM"
  331.  
  332. ################################################################################
  333. #
  334. # OpenHCI FWIM for another vendor's card
  335. #
  336.  
  337. "{ObjectsDir}OHCIFWIM2.c.o"    ƒ                                                ∂
  338.                             "{OHCIFWIMSourceDir}OHCIFWIM.c"                    ∂
  339.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  340.                             "{FWInterfacesDir}FireWire.h"
  341.     {CPPC}                                                                    ∂
  342.         "{OHCIFWIMSourceDir}OHCIFWIM.c"                                     ∂
  343.         -i "{FWInterfacesDir}"                                                ∂
  344.         -i "{OHCIFWIMSourceDir}"                                            ∂
  345.         -d Vendor2_Name=1                                                    ∂
  346.         {CPPCOptions}                                                        ∂
  347.         -o {Targ}
  348.  
  349. "{ObjectsDir}OHCIFWIMIsoch2.c.o"    ƒ                                        ∂
  350.                             "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"            ∂
  351.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  352.                             "{FWInterfacesDir}FireWire.h"
  353.     {CPPC}                                                                    ∂
  354.         "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"                                 ∂
  355.         -i "{FWInterfacesDir}"                                                ∂
  356.         -i "{OHCIFWIMSourceDir}"                                            ∂
  357.         {CPPCOptions}                                                        ∂
  358.         -o {Targ}
  359.  
  360. "{ExtensionsDir}OHCIFWIM2"    ƒƒ                                                ∂
  361.                             "{ObjectsDir}OHCIFWIM2.c.o"                        ∂
  362.                             "{ObjectsDir}OHCIFWIMIsoch2.c.o"                ∂
  363.                             "{OHCIFWIMSourceDir}OHCIFWIM.exp"
  364.     {LinkPPC}                                                                ∂
  365.         -t 'ndrv'                                                            ∂
  366.         -c 'fw  '                                                            ∂
  367.         -xm sharedlibrary                                                    ∂
  368.         -w                                                                     ∂
  369.         -@export "{OHCIFWIMSourceDir}OHCIFWIM.exp"                            ∂
  370.         "{ObjectsDir}OHCIFWIM2.c.o"                                            ∂
  371.         "{ObjectsDir}OHCIFWIMIsoch2.c.o"                                    ∂
  372.         "{SharedLibraries}InterfaceLib"                                        ∂
  373.         "{SharedLibraries}StdCLib"                                            ∂
  374.         "{SharedLibraries}NameRegistryLib"                                    ∂
  375.         "{SharedLibraries}DriverServicesLib"                                ∂
  376.         "{SharedLibraries}PCILib"                                            ∂
  377.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  378.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  379.          -o {Targ}
  380.  
  381. "{ExtensionsDir}OHCIFWIM2"    ƒƒ                                                ∂
  382.                             "{OHCIFWIMSourceDir}OHCIFWIM.r"                    ∂
  383.                             "{FWIMRootDir}MakeFile"
  384.     Rez                                                                        ∂
  385.         {OHCIRezOptions}                                                    ∂
  386.         "{OHCIFWIMSourceDir}OHCIFWIM.r"                                        ∂
  387.         -d Vendor2_Name=1                                                    ∂
  388.         -a                                                                    ∂
  389.         -o {Targ}
  390.  
  391.  
  392. OHCIFWIM2    ƒ                                                                ∂
  393.                         "{ExtensionsDir}OHCIFWIM2"
  394.  
  395. ################################################################################
  396. #
  397. # both OHCI fwims in the same file
  398. #
  399. "{ExtensionsDir}"CombinedOHCIFWIM    ƒ                                        ∂
  400.                             OHCIFWIM                                        ∂
  401.                             OHCIFWIM2
  402.     Duplicate -y "{ExtensionsDir}OHCIFWIM2" {Targ}
  403.     MergeFragment "{ExtensionsDir}OHCIFWIM" {Targ}
  404.  
  405. CombinedOHCIFWIM                    ƒ                                        ∂
  406.                             "{ExtensionsDir}"CombinedOHCIFWIM
  407.  
  408.